package ojt.logic;

import ojt.dao.DaoShain;
import ojt.exception.BusinessException;
import ojt.exception.SystemException;
import ojt.model.*;


public class LoginLogic {
	
	public LoginLogic(){
		// TODO コンストラクタ
	}

	/**
	 * ログイン実行メソッド.
	 * 社員番号、パスワードの入力チェックを行った後、
	 * DBにアクセスしてユーザ認証を行う。
	 * 正しく認証された場合、引数の社員情報モデルクラスに、氏名を格納する。
	 * @param shain
	 * @throws SystemException システム例外
	 * @throws BusinessException 業務例外 入力チェックエラー、認証エラー
	 */
	public void execute(Shain shain) throws SystemException,BusinessException{
		//社員所情報アクセスクラス
		DaoShain dao = null;
		
		try{
			//入力チェック
			shain.checkLoginInput();
			//入力チェックがなければ、DBアクセスする
			dao = new DaoShain();
			//認証
			dao.checkExistShain(shain);
		}
		finally{
			//コネクションの削除
			if(dao != null){dao.closeConnection();}
		}
	}
}
